export default {
  type: "object",
  properties: {
    "level 1": {
      required: ["name"],
      type: "object",
      properties: {
        "level 2": {
          required: ["name"],
          type: "object",
          properties: {
            "level 3": {
              required: ["name"],
              type: "object",
              properties: {
                "level 4": {
                  required: ["name"],
                  type: "object",
                  properties: {
                    name: {
                      type: {
                        $ref: "#/properties/name/type",
                      },
                    },
                    "level 5": {
                      required: ["name"],
                      type: "object",
                      properties: {
                        name: {
                          type: {
                            $ref: "#/properties/name/type",
                          },
                        },
                        "level 6": {
                          required: ["name"],
                          type: "object",
                          properties: {
                            name: {
                              type: {
                                $ref: "#/properties/name/type",
                              },
                            },
                            "level 7": {
                              required: ["name"],
                              type: "object",
                              properties: {
                                "level 8": {
                                  required: ["name"],
                                  type: "object",
                                  properties: {
                                    "level 9": {
                                      required: ["name"],
                                      type: "object",
                                      properties: {
                                        "level 10": {
                                          required: ["name"],
                                          type: "object",
                                          properties: {
                                            "level 11": {
                                              required: ["name"],
                                              type: "object",
                                              properties: {
                                                "level 12": {
                                                  required: ["name"],
                                                  type: "object",
                                                  properties: {
                                                    "level 13": {
                                                      required: ["name"],
                                                      type: "object",
                                                      properties: {
                                                        name: {
                                                          type: {
                                                            $ref: "#/properties/name/type",
                                                          },
                                                        },
                                                        "level 14": {
                                                          required: ["name"],
                                                          type: "object",
                                                          properties: {
                                                            name: {
                                                              type: {
                                                                $ref: "#/properties/name/type",
                                                              },
                                                            },
                                                            "level 15": {
                                                              required: ["name"],
                                                              type: "object",
                                                              properties: {
                                                                "level 16": {
                                                                  required: ["name"],
                                                                  type: "object",
                                                                  properties: {
                                                                    name: {
                                                                      type: {
                                                                        $ref: "#/properties/name/type",
                                                                      },
                                                                    },
                                                                    "level 17": {
                                                                      required: ["name"],
                                                                      type: "object",
                                                                      properties: {
                                                                        "level 18": {
                                                                          required: ["name"],
                                                                          type: "object",
                                                                          properties: {
                                                                            "level 19": {
                                                                              required: ["name"],
                                                                              type: "object",
                                                                              properties: {
                                                                                "level 20": {
                                                                                  required: ["name"],
                                                                                  type: "object",
                                                                                  properties: {
                                                                                    "level 21": {
                                                                                      required: ["name"],
                                                                                      type: "object",
                                                                                      properties: {
                                                                                        "level 22": {
                                                                                          required: ["name"],
                                                                                          type: "object",
                                                                                          properties: {
                                                                                            "level 23": {
                                                                                              required: ["name"],
                                                                                              type: "object",
                                                                                              properties: {
                                                                                                name: {
                                                                                                  type: {
                                                                                                    $ref: "#/properties/name/type",
                                                                                                  },
                                                                                                },
                                                                                                "level 24": {
                                                                                                  required: ["name"],
                                                                                                  type: "object",
                                                                                                  properties: {
                                                                                                    name: {
                                                                                                      type: {
                                                                                                        $ref: "#/properties/name/type",
                                                                                                      },
                                                                                                    },
                                                                                                    "level 25": {
                                                                                                      required: [
                                                                                                        "name",
                                                                                                      ],
                                                                                                      type: "object",
                                                                                                      properties: {
                                                                                                        name: {
                                                                                                          type: {
                                                                                                            $ref: "#/properties/name/type",
                                                                                                          },
                                                                                                        },
                                                                                                        "level 26": {
                                                                                                          required: [
                                                                                                            "name",
                                                                                                          ],
                                                                                                          type: "object",
                                                                                                          properties: {
                                                                                                            "level 27":
                                                                                                              {
                                                                                                                required:
                                                                                                                  [
                                                                                                                    "name",
                                                                                                                  ],
                                                                                                                type: "object",
                                                                                                                properties:
                                                                                                                  {
                                                                                                                    "level 28":
                                                                                                                      {
                                                                                                                        required:
                                                                                                                          [
                                                                                                                            "name",
                                                                                                                          ],
                                                                                                                        type: "object",
                                                                                                                        properties:
                                                                                                                          {
                                                                                                                            "level 29":
                                                                                                                              {
                                                                                                                                required:
                                                                                                                                  [
                                                                                                                                    "name",
                                                                                                                                  ],
                                                                                                                                type: "object",
                                                                                                                                properties:
                                                                                                                                  {
                                                                                                                                    name: {
                                                                                                                                      type: {
                                                                                                                                        $ref: "#/properties/name/type",
                                                                                                                                      },
                                                                                                                                    },
                                                                                                                                  },
                                                                                                                              },
                                                                                                                            name: {
                                                                                                                              type: {
                                                                                                                                $ref: "#/properties/name/type",
                                                                                                                              },
                                                                                                                            },
                                                                                                                          },
                                                                                                                      },
                                                                                                                    name: {
                                                                                                                      type: {
                                                                                                                        $ref: "#/properties/name/type",
                                                                                                                      },
                                                                                                                    },
                                                                                                                  },
                                                                                                              },
                                                                                                            name: {
                                                                                                              type: {
                                                                                                                $ref: "#/properties/name/type",
                                                                                                              },
                                                                                                            },
                                                                                                          },
                                                                                                        },
                                                                                                      },
                                                                                                    },
                                                                                                  },
                                                                                                },
                                                                                              },
                                                                                            },
                                                                                            name: {
                                                                                              type: {
                                                                                                $ref: "#/properties/name/type",
                                                                                              },
                                                                                            },
                                                                                          },
                                                                                        },
                                                                                        name: {
                                                                                          type: {
                                                                                            $ref: "#/properties/name/type",
                                                                                          },
                                                                                        },
                                                                                      },
                                                                                    },
                                                                                    name: {
                                                                                      type: {
                                                                                        $ref: "#/properties/name/type",
                                                                                      },
                                                                                    },
                                                                                  },
                                                                                },
                                                                                name: {
                                                                                  type: {
                                                                                    $ref: "#/properties/name/type",
                                                                                  },
                                                                                },
                                                                              },
                                                                            },
                                                                            name: {
                                                                              type: {
                                                                                $ref: "#/properties/name/type",
                                                                              },
                                                                            },
                                                                          },
                                                                        },
                                                                        name: {
                                                                          type: {
                                                                            $ref: "#/properties/name/type",
                                                                          },
                                                                        },
                                                                      },
                                                                    },
                                                                  },
                                                                },
                                                                name: {
                                                                  type: {
                                                                    $ref: "#/properties/name/type",
                                                                  },
                                                                },
                                                              },
                                                            },
                                                          },
                                                        },
                                                      },
                                                    },
                                                    name: {
                                                      type: {
                                                        $ref: "#/properties/name/type",
                                                      },
                                                    },
                                                  },
                                                },
                                                name: {
                                                  type: {
                                                    $ref: "#/properties/name/type",
                                                  },
                                                },
                                              },
                                            },
                                            name: {
                                              type: {
                                                $ref: "#/properties/name/type",
                                              },
                                            },
                                          },
                                        },
                                        name: {
                                          type: {
                                            $ref: "#/properties/name/type",
                                          },
                                        },
                                      },
                                    },
                                    name: {
                                      type: {
                                        $ref: "#/properties/name/type",
                                      },
                                    },
                                  },
                                },
                                name: {
                                  type: {
                                    $ref: "#/properties/name/type",
                                  },
                                },
                              },
                            },
                          },
                        },
                      },
                    },
                  },
                },
                name: {
                  type: {
                    $ref: "#/properties/name/type",
                  },
                },
              },
            },
            name: {
              type: {
                $ref: "#/properties/name/type",
              },
            },
          },
        },
        name: {
          type: {
            $ref: "#/properties/name/type",
          },
        },
      },
    },
    name: {
      type: {
        required: ["first", "last"],
        type: "object",
        properties: {
          middle: {
            minLength: {
              $ref: "#/properties/name/type/properties/last/minLength",
            },
            type: {
              $ref: "#/properties/name/type/properties/last/type",
            },
          },
          prefix: {
            minLength: 3,
            $ref: "#/properties/name/type/properties/last",
          },
          last: {
            minLength: 1,
            type: "string",
            title: "requiredString",
          },
          suffix: {
            $ref: "#/properties/name/type/properties/prefix",
            type: "string",
            maxLength: 3,
          },
          first: {
            $ref: "#/properties/name/type/properties/last",
          },
        },
        title: "name",
      },
    },
  },
  title: "Deep Schema",
};
